Класс SharedObject

Доступность

Flash Player 6.

Описание

Класс Shared object является мощным средством, позволяющим приложениям, запущенном на одном компьютере, обмениваться данными и хранить их. Самым понятным описанием shared objects будет назвать их Flash-аналогом cookies.

Local shared object (далее LSO) может использоваться для хранения данных, например, SharedObject.getLocal() создает shared object в памяти плеера, подобно калькулятору, хранящему значение в памяти. Так как shared objects хранятся локально, Flash сохраняет их при окончании проигрывания ролика. При следующем открытии ролика можно будет получить сохраненное значение. Однако, если присвоить shared object значение null до окончания проигрывания, никаких данных сохраняться не будет.

Чтобы создать LSO, используйте следующий синтаксис:

// Создаем LSO
var so:SharedObject = SharedObject.getLocal("foo");

Использование места на жестком диске

LSO хранятся на клиентской машине, занимая определенный объем свободного дискового пространства.

По умолчанию, Flash может сохранять посредством LSO до 100 килобайт данных. При попытке сохранить большее количество данных, Flash Player выведет диалоговое окно Local Storage, позволяющее пользователю разрешить или запретить роликам из указанного домена сохранять данные локально. (Убедитесь в том, что размер Сцены в вашем ролике не меньше 215 x 138 пикселов; это минимальный размер, необходимый Flash для отображения диалогового окна.)

Если пользователь выбирает пункт Allow, объект сохраняется и вызывается обработчик событияSharedObject.onStatus со значением свойства code равным SharedObject.Flush.Success; если пользователь выбирает пункт Deny, объект не сохраняется и SharedObject.onStatus вызывается со значением свойства code равным SharedObject.Flush.Failed.

Пользователь также может установить постоянные настройки для данного домена, кликнув правой кнопкой (Windows) или с прижатой Control (Macintosh) в окне плеера, затем выбрав пункт контекстного меню Settings и далее панель Local Storage.

Программно изменить эти настройки нельзя, однако можно отобразить панель Local Storage, чтобы пользователь сделал свой выбор, используя метод System.showSettings(1).

Следующий список показывает связь выбора пользователя с максимальным объемом хранимых в LSO данных:

Также, если пользователь выбирает значение меньше, чем в данный момент используется LSO, плеер предупреждает пользователя, что данные будут потеряны.

Замечание: Для Flash Player в среде разработке лимит на объем сохраняемых данных равен количеству свободного места на диске.

Обзор методов the Класс SharedObject

Метод

Описание

SharedObject.clear()

Очищает SO (shared object) и удаляет его с жесткого диска.

SharedObject.flush()

Сохраняет данные в SO на жестком диске.

SharedObject.getLocal()

Возвращается ссылку на существующий на данном компьютере SO.

SharedObject.getSize()

Возвращает размер SO в байтах.

Обзор свойств класса SharedObject

Свойство

Описание

SharedObject.data

Набор аттрибутов, присвоенных свойству data объекта (SO); эти аттрибуты могут использоваться совместно или храниться.

Обзор обработчиков событий класса SharedObject

Обработчик события

Описание

SharedObject.onStatus

Вызывается при ошибке, предупреждении или выводе другой информации пользователю.

Конструктор класса SharedObject

Для информации по созданию SO смотри SharedObject.getLocal().